/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package sofia.Persistencia.DAOS;


import Principal.SingletonDB;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JOptionPane;
/**
 *
 * @author Crisfalt
 */
public class DCoordinadorGeneraReporte {

        private String idCoordinador;
        private int idReporte;
        private Date fecha;

        public DCoordinadorGeneraReporte( final String idCoordinador , final int idReporte , final Date fecha ) {
                this.idCoordinador = idCoordinador;
                this.idReporte = idReporte;
                this.fecha = fecha;
        }

        public int guardarDatos() {
                String sentenciaSql = "";
                sentenciaSql = "INSERT INTO CoordinadorGeneraReporte(coordinador_id,reporte_id,fecha) VALUES ( '"+idCoordinador+"','"+idReporte+"','"+fecha+"' )";
                try{
                            Connection conn= SingletonDB.objFachadaBD.conectar();
                            Statement sentencia = conn.createStatement();
                            int numFilas = sentencia.executeUpdate( sentenciaSql );
                            SingletonDB.objFachadaBD.cerrarConexion(conn);
                            return numFilas;
                }
                catch(SQLException e){ System.out.println(e); }
                catch(Exception e){ System.out.println(e); }
                return -1;
        }

        public List listaReportesCoordinador( final String idCoordinador ){
                List listaReportes = new ArrayList();
                String consulta = "SELECT reporte_id FROM CoordinadorGeneraReporte where coordinador_id = '"+idCoordinador+"';";
                try {
                        Connection conn= SingletonDB.objFachadaBD.conectar();
                        Statement sentencia = conn.createStatement();
                        ResultSet resultado = sentencia.executeQuery( consulta );
                        while( resultado.next() ) {
                                listaReportes.add( resultado.getString("reporte_id" ) );
                        }
                        SingletonDB.objFachadaBD.cerrarConexion(conn);
                }
                catch( Exception error ) {
                        JOptionPane.showMessageDialog( null , "No se logro la consulta del Perfil : " + error.toString() , "Advertencia" , JOptionPane.WARNING_MESSAGE );
                }
                return listaReportes;
        }

        public void eliminarEnCascada( final String idCoordinador ) {
                String consulta = "DELETE FROM CoordinadorGeneraReporte WHERE coordinador_id = '"+idCoordinador+"';";
                try {
                        Connection conn= SingletonDB.objFachadaBD.conectar();
                        Statement sentencia = conn.createStatement();
                        int numFilas = sentencia.executeUpdate( consulta );
                        SingletonDB.objFachadaBD.cerrarConexion( conn );
                }
                catch( Exception error ) {
                        JOptionPane.showMessageDialog( null , "No se logro la consulta del Perfil : " + error.toString() , "Advertencia" , JOptionPane.WARNING_MESSAGE );
                }
        }

}
